---
title: 部署你的 Astro 站点
description: 如何在互联网上部署你的 Astro 站点
sidebar:
  label: 部署概览
---
import DeployGuidesNav from '~/components/DeployGuidesNav.astro';
import PackageManagerTabs from '~/components/tabs/PackageManagerTabs.astro'
import { Steps } from '@astrojs/starlight/components'

**准备好构建并部署你的 Astro 站点了吗？** 按照我们的指南之一来了解不同的部署服务，或者向下滚动以获取有关部署 Astro 站点的一般指南。

## 部署指南

<DeployGuidesNav />

## 快速部署选项

许多服务商都可以使用网站控制台或 CLI 快速构建并部署 Astro 站点。

### 网站控制台

你可以在服务商中连接 Astro 项目的在线 Git 仓库（如 GitHub、GitLab、Bitbucket）并利用 Git 的持续部署快速部署。

这些服务商会自动检测到你所推送 Astro 项目的源码库，构建站点并将其部署到自定义 URL 或你的个人域名上。通常情况下，在这些平台上设置部署将遵循类似以下的步骤。

<Steps>
1. 将你的仓库添加到在线 Git 提供商（如 GitHub、GitLab、Bitbucket）。

2. 选择支持**持续集成**的服务商（例如 [Netlify](/zh-cn/guides/deploy/netlify/) 或 [Vercel](/zh-cn/guides/deploy/vercel/)），将你的 Git 仓库作为一个新站点/项目导入。

    许多常见服务商会识别你的项目为 Astro 网站，并应选择适当的配置设置来构建和部署你的网站，如下所示。（如果不是，那么这些设置也可以进行修改）

    :::note[部署设置]
    - **构建命令：** `astro build` 或 `npm run build`。
    - **发布目录：** `dist`。
    :::

3. 点击 `Deploy`，你的新网站将在该服务商所提供的唯一链接上创建好了（例如：`new-astro-site.netlify.app`）。
</Steps>

该主服务商会自动监控 Git 供应商上 main 分支的变化，并在每次有新的提交时重建并重新发布你的网站。这些设置通常可以在服务商的供应商控制台上进行配置。

### CLI 部署

一些服务商有它们自己的命令行界面（CLI），你可以用 npm 在自己的机器上全局安装它们。通常使用 CLI 部署会看起来像下面这样：

<Steps>
1. 全局安装你的服务器 CLI，比如：

    <PackageManagerTabs>
        <Fragment slot="npm">
        ```shell
        npm install --global netlify-cli
        ```
        </Fragment>
        <Fragment slot="pnpm">
        ```shell
        pnpm add --global netlify-cli
        ```
        </Fragment>
        <Fragment slot="yarn">
        ```shell
        yarn global add netlify-cli
        ```
        </Fragment>
    </PackageManagerTabs>

2. 运行 CLI 并跟随指引进行验证和设置等操作。

3. 构建站点并部署到服务商

    许多服务商会帮你构建和部署站点。它们通常也能识别出你的项目是 Astro 站点，会选择相应的配置设置进行构建和部署，就像下面一样。（如果不是，那么这些设置也可以进行修改）

    :::note[部署设置]
    - **构建命令：** `astro build` 或 `npm run build`。
    - **发布目录：** `dist`。
    :::


    其他服务商会要求你在[在本地构建站点](#在本地构建站点)并用命令行节目部署。
</Steps>

## 在本地构建站点

许多服务商如 Netlify 和 Vercel 都会构建并将构建输出发布到网上。但是一些站点需要在本地构建并运行部署命令或上传你的构建输出。

你可能也会想要在本地构建并预览你的站点或在自有环境中排查潜在错误和警告。

运行 `npm run build` 命令即可构建 Astro 站点。

<PackageManagerTabs>
    <Fragment slot="npm">
    ```shell
    npm run build
    ```
    </Fragment>
    <Fragment slot="pnpm">
    ```shell
    pnpm run build
    ```
    </Fragment>
    <Fragment slot="yarn">
    ```shell
    yarn run build
    ```
    </Fragment>
</PackageManagerTabs>

默认情况下，构建输出将会被放在 `dist/`。你可以修改 [`outDir` 配置项](/zh-cn/reference/configuration-reference/#outdir)改变存储位置。

## 为按需渲染添加一个适配器

:::note
在使用 [按需渲染](/zh-cn/guides/on-demand-rendering/) 部署你的 Astro 站点前，请确保：

    - 在项目依赖中安装[合适的适配器](/zh-cn/guides/on-demand-rendering/)（手动安装，或者使用适配器的 `astro add` 命令，例如，`npx astro add netlify`）。
    - 手动安装时，需要在你的 `astro.config.mjs` 文件导入和默认导出中[加上适配器](/zh-cn/reference/configuration-reference/#integrations)。（`astro add` 命令将为你处理此步骤！）
:::
